package string;

/**
 * java.lang.StringBuilder 专门用于编辑字符串内容的工具类
 * 其内部维护一个可变的char数组
 * 同时提供了编辑字符串内容的相关操作:增删改插
 */
public class StringBuilderDemo {
    public static void main(String[] args) {
        /*
        //StringBuilder的创建方式
        StringBuilder builder1 = new StringBuilder();//空字符串
        StringBuilder builder2 = new StringBuilder();//abc串

        //String和StringBuilder互转
        String str = "abc";
        StringBuilder builder3 = new StringBuilder(str);//abc串，基于String对象构造StringBuilder
        String str2 = builder3.toString();//将builder3转换为String
         */
        String str ="好好学习Java";
        StringBuilder builder =new StringBuilder(str);
         //append():追加内容---在末尾增加
        builder.append(",为了找个好工作");//好好学习Java,为了找个好工作
         //                        15
        System.out.println(builder);
         //relace():替换部分内容(含头不含尾)
        builder.replace(9,16,"就是为了改变世界");
        System.out.println(builder);//好好学习Java,就是为了改变世界

        //delete():删除部分内容(含头不含尾)
        builder.delete(0,8);//删除下标0-7的
        System.out.println(builder);//,就是为了改变世界

        //insert():插入内容
        builder.insert(4,"活着");//在下标4的位置之前插入活着
        System.out.println(builder);//,就是为活着了改变世界

        //reverse():反转
        builder.reverse();//反转builder内容
        System.out.println(builder);//界世变改了着活为是就,

    }
}
